package org.estela.vm;

public class Instruction {
	
	public class PRINT {

	}

	public final static int INVOKE_FUNCTION = 1;
	public final static int LDC = 2;
	public final static int RETURN = 3;
	public final static int PRINT = 4;
	
	private int _code;

	private Object[] _arguments;
	
	public Instruction(int code, Object argument) {
		_code = code;
		_arguments = new Object[]{argument};
	}
	
	public Instruction(int code, Object[] arguments) {
		_code = code;
		_arguments = arguments;
	}
	
	public Instruction(int code) {
		_code = code;
	}

	public int getCode() {
		return _code;
	}
	
	public Object[] getArguments() {
		return _arguments;
	}
	
}
